As user interfaces become more sophisticated, the “pointer hover” is becoming increasingly important. This user interface event is generally triggered when a user interface pointer is placed over an interface object. This pointer is typically controlled by a mechanical pointing device. This hover is typically used with groups of graphical objects, and allows a user to trigger an event without “clicking” on or otherwise selecting the object. As typically executed, no other user triggering action is required other than placing the pointer over the selected object.
This simplicity of execution however, can cause problems with complex interfaces. With the traditional implementation of the hover trigger, a typical problem results when multiple “hover-able” objects (object that can have this action applied to them) are placed in close proximity on an interface. If a user attempts to hover over one object, another object can be inadvertently hovered-over. User satisfaction can be negatively affected when an action occurs that a user has not intended. In addition to causing unwanted interface features to appear, such as a pop-up, user progress toward a goal is frustrated. As would be appreciated by one having skill in the relevant art, even a delay of several hundred milliseconds can cause significant user dissatisfaction.
One traditional solution to the inadvertent hovering over proximate hover-able objects is to introduce a delay in the triggering of the hover event. With this approach, even after the pointer of a user is placed on a hover-able hot-spot, a delay is implemented before the hover triggered even occurs. This approach generally reduces the occurrence of inadvertent hovers because of the delay.
The delay implemented with this approach however, is also implemented when a user intentionally hovers over an object. Just as with the inadvertent triggering—the event this delay was designed to prevent—this delay frustrates user progress towards their goal. Interface designers that implemented this delay approach are forced to balance the likelihood that a proximate object will be inadvertently hover triggered and user frustration with the delay. Even though the delay is typically very short, e.g., 500 milliseconds, this delay causes significant negative impact on user satisfaction. Because users vary in their perception of delay, their ability to steadily use a mouse and other pointer use characteristics, under the traditional approach, selecting a single delay number that will please the majority of users is difficult.
Therefore what is needed is improved methods, systems and computer program products that address the problems noted above.